package cn.cdu.data.service.impl;

import cn.cdu.data.entity.ResourceAnalysis;
import cn.cdu.data.mapper.ResourceAnalysisMapper;
import cn.cdu.data.service.IResourceAnalysisService;
import cn.cdu.data.vo.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;

@Service
public class ResourceAnalysisServiceImpl extends ServiceImpl<ResourceAnalysisMapper, ResourceAnalysis> implements IResourceAnalysisService {

    @Autowired
    private ResourceAnalysisMapper resourceAnalysisMapper;

    @Override
    public ResourceStatsVO getStats(String startDate, String endDate, String departmentId, String doctorId) {
        return resourceAnalysisMapper.getStats(startDate, endDate, departmentId, doctorId);
    }

    @Override
    public List<ResourceTrendVO> getTrend(String startDate, String endDate, String departmentId, String doctorId) {
        return resourceAnalysisMapper.getTrend(startDate, endDate, departmentId, doctorId);
    }

    @Override
    public ResourceStatusVO getStatus(String startDate, String endDate, String departmentId, String doctorId) {
        return resourceAnalysisMapper.getStatus(startDate, endDate, departmentId, doctorId);
    }

    @Override
    public List<ResourceDepartmentVO> getDepartmentDistribution(String startDate, String endDate, String departmentId, String doctorId) {
        return resourceAnalysisMapper.getDepartmentDistribution(startDate, endDate, departmentId, doctorId);
    }

    @Override
    public List<ResourceDepartmentVO> getDepartmentComparison(String startDate, String endDate, String departmentId, String doctorId) {
        return resourceAnalysisMapper.getDepartmentComparison(startDate, endDate, departmentId, doctorId);
    }

    @Override
    public List<ResourceDepartmentTrendVO> getDepartmentTrend(String startDate, String endDate, String departmentId, String doctorId) {
        return resourceAnalysisMapper.getDepartmentTrend(startDate, endDate, departmentId, doctorId);
    }
} 